package ar.com.algotres.tpdos.model.fisica;


public class Movimiento {

	private Velocidad velocidad;
	private Trayectoria trayectoria;
	private Double desplazamientoEnX;
	private Double desplazamientoEnY;

	public Movimiento(Velocidad velocidad,
			Trayectoria trayectoria) {
		this.velocidad = velocidad;
		this.trayectoria = trayectoria;
		
		Double anguloDesplazamiento = this.trayectoria.getAnguloTrayectoria();
		
		desplazamientoEnX = this.obtenerDesplazamientoEnX(velocidad, anguloDesplazamiento);
		desplazamientoEnY = this.obtenerDesplazamientoEnY(velocidad, anguloDesplazamiento);
	}

	public Trayectoria getTrayectoria() {
		return trayectoria;
	}

	public Velocidad getVelocidad() {
		return velocidad;
	}

	private Double obtenerDesplazamientoEnX(Velocidad velocidad,
			Double anguloDesplazamiento) {

		double desplazamiento = (velocidad.getModulo() * Math.cos(anguloDesplazamiento));

//		desplazamiento = Math.round(desplazamiento);
		
		return desplazamiento;
	}

	private Double obtenerDesplazamientoEnY(Velocidad velocidad,
			Double anguloDesplazamiento) {

		double desplazamiento = (velocidad.getModulo() * Math.sin(anguloDesplazamiento));

//		desplazamiento = Math.round(desplazamiento);
		
		return desplazamiento;
	}
	
	public Double getDesplazamientoEnX() {
		return desplazamientoEnX;
	}

	public Double getDesplazamientoEnY() {
		return desplazamientoEnY;
	}
}
